Effective requirements elicitation is essential to the success of software development projects. Many papers have been written that promulgate specific elicitation methods. A few model elicitation in general. However, none have yet modeled elicitation in a way that makes clear the critical role played by situational knowledge. This paper presents a unified model of the requirements elicitation process that emphasizes the iterative nature of elicitation as it transforms the current state of the requirements and the situation to an improved understanding of the requirements and, potentially, a modified situation. One meta-process of requirements elicitation, selection of an appropriate elicitation technique, is also captured in the model. The values of this model are: (1) an improved understanding of elicitation helps analysts improve their elicitation efforts and (2) as we improve our ability to perform elicitation, we improve the likelihood that systems we create will meet their intended customers' needs.
The paper presents results of ongoing research to support effective user involvement during systems development projects. The Collaborative Software Engineering Methodology is presented as a framework that contains mechanisms to support three layers of user involvement: selected user representatives, user groups, and the broader user community. Productivity and user participation of traditional group meetings have been limited by chauffeured facilitation and by support of single-user tools designed for analysts rather than users. The paper introduces electronic meeting systems (EMS) modeling tools designed to allow users to work in parallel to contribute directly during meetings. These tools are easy to use while containing support features traditionally associated with CASE tools. The methodology includes a sequence of requirements abstractions that users engage directly including activity models, data models, scenarios, system use eases, and prototypes. This methodology is designed to help organizations respond to today's rapidly changing information processing needs.